unit UnitMapFrame;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, UnitBaseFrame;

type

  TMapPoint = record
    lng : Double ;
    lat : Double ;
  end;

  TGpsPointList = class(TList);

  TGpsPoint = record
    Id : Integer ;
    CarId : String ;
    lng : Double ;
    lat : Double ;
    GpsTime : TDatetime ;
    location : string ;
  end;

  TMapType = (mtMapInfo,mtGoogle,mtNone);
  
  TMapFrame = class(TBaseFrame)
  private
    { Private declarations }
  protected

    procedure GetMapConfig;virtual;    
  public
    { Public declarations }
    constructor Create(AOwner: TComponent); override;
    function GetType : TMapType ;virtual ;

  public
    function GetLocation(Lng,lat : Double;var Location : string ) : boolean ;overload;virtual;
    function GetLocation(Location : string;var lng,lat : Double) : boolean ;overload ;virtual;

    procedure Track(list : TGpsPointList);virtual ;
    procedure TrackFile(XmlFileName: string );virtual;
  end;

implementation

{$R *.dfm}

{ TMapFrame }

constructor TMapFrame.Create(AOwner: TComponent);
begin
  inherited;
  GetMapConfig ;
end;

function TMapFrame.GetLocation(Lng, lat: Double;var Location : string ) : boolean;
begin

end;

function TMapFrame.GetLocation(Location: string;var lng,lat : Double) : boolean;
begin

end;

procedure TMapFrame.GetMapConfig;
begin

end;

function TMapFrame.GetType: TMapType;
begin
  Result := mtNone ;
end;

procedure TMapFrame.Track(list: TGpsPointList);
begin

end;

procedure TMapFrame.TrackFile(XmlFileName: string);
begin

end;

end.
